#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
//构造函数
static void __attribute__((constructor)) before_main(void)
{
    printf("constructor()...\n");
}
//析构函数
static void __attribute__((destructor)) after_main(void)
{
    printf("destructor()...\n");
}
//回调函数
void fun_cab()
{
    printf("callback function()...\n");
}
//普通函数
void fun_com(void)
{
    printf("common function()...\n");
}

int main()
{
    //注册回调函数
    if (atexit(fun_cab) != 0)
    {
        perror("callback register failed!");
        exit(0);
    }
    //调用普通函数
    fun_com();
}